/**
 * 数据层：封装数据库操作（数据的增删改查）
 * 安装第三方模块：MySQL或mysql2（mysql8.0以上版本）
 */
const mysql = require("mysql2");
const config = require("../config");
//创建连接对象
const pool = mysql.createPool(config.dbconfig);

module.exports = {
    /**
     * 执行数据的增删改查
     * @param {sql语句} sql 
     * @param {参数数组} params 
     * @param {回调函数} callback 
     */
    query: (sql, params, callback) => {
        pool.getConnection((err1, conn) => {
            if (err1) {
                callback(err1.message, null);
            } else {
                conn.query(sql, params, (err2, results) => {
                    if (err2) {
                        callback(err2.message, null);
                    } else {
                        callback(null, results);
                    }
                    //释放连接
                    conn.release();
                });
            }
        });
    }
}